security_check();
if ($resultat_session == "c") {
header("Location:utilisateurs/mon_compte.php?change_mdp=yes&retour=accueil#changemdp");
die();
} else if ($resultat_session == "0") {
header("Location: ../logout.php?auto=1");
die();
}
$sql="SELECT 1=1 FROM droits WHERE id='/mod_engagements/imprimer_documents.php';";
$test=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($test)==0) {
$sql="INSERT INTO droits SET id='/mod_engagements/imprimer_documents.php',
administrateur='V',
professeur='V',
cpe='V',
scolarite='V',
eleve='V',
responsable='V',
secours='F',
autre='F',
description='Imprimer documents',
statut='';";
$insert=mysqli_query($GLOBALS["mysqli"], $sql);
}
if (!checkAccess()) {
header("Location: ../logout.php?auto=2");
die();
}
$id_classe=isset($_POST['id_classe']) ? $_POST['id_classe'] : (isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL);
$tab_engagements=get_tab_engagements();
if(count($tab_engagements['indice'])==0) {
header("Location: ../accueil.php?msg=Aucun type d engagement n est actuellement défini.");
die();
}
$nb_engagements=count($tab_engagements['indice']);
// Restreindre a ses propres documents
if(($_SESSION['statut']=='eleve')||($_SESSION['statut']=='responsable')) {
if(!isset($id_classe)) {
header("Location: ../accueil.php?msg=Classe non choisie.");
die();
}
if(!is_delegue_conseil_classe($_SESSION['login'], $id_classe)) {
header("Location: ../accueil.php?msg=Accès non autorisé.");
die();
}
include_once('../mod_ooo/lib/tinyButStrong.class.php');
include_once('../mod_ooo/lib/tinyDoc.class.php');
$acad = $gepiSettings['gepiSchoolAcademie'];
$etab_anne_scol = $gepiSettings['gepiSchoolName'];
$etab_nom = $gepiSettings['gepiSchoolName'];
$etab_adr1 = $gepiSettings['gepiSchoolAdress1'];
$etab_adr2 = $gepiSettings['gepiSchoolAdress2'];
$etab_cp = $gepiSettings['gepiSchoolZipCode'];
$etab_ville = $gepiSettings['gepiSchoolCity'];
$etab_tel = $gepiSettings['gepiSchoolTel'];
$etab_fax = $gepiSettings['gepiSchoolFax'];
$etab_email = $gepiSettings['gepiSchoolEmail'];
$imprimer=isset($_POST['imprimer']) ? $_POST['imprimer'] : (isset($_GET['imprimer']) ? $_GET['imprimer'] : "");
$classe=get_nom_classe($id_classe);
if($imprimer=="liste_eleves") {
$tab_OOo=array();
$sql="SELECT DISTINCT e.* FROM eleves e, j_eleves_classes jec WHERE jec.id_classe='".$id_classe."' AND jec.login=e.login ORDER BY e.nom, e.prenom;";
//echo "$sql
";
$res=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res)>0) {
$cpt=0;
while($lig=mysqli_fetch_object($res)) {
$tab_OOo[$cpt]['designation_eleve']=casse_mot($lig->nom)." ".casse_mot($lig->prenom,'majf2');
$cpt++;
}
}
// Load the template
$nom_fichier_modele_ooo ='liste_eleve_conseil_classe.odt';
$prefixe_generation_hors_dossier_mod_ooo="../mod_ooo/";
//Procédure du traitement à effectuer
//les chemins contenant les données
include_once ("../mod_ooo/lib/chemin.inc.php");
$nom_fichier = "../mod_ooo/".$nom_dossier_modele_a_utiliser.$nom_fichier_modele_ooo;
//Génération du nom du fichier
$now = gmdate('d_M_Y_H:i:s');
$nom_fichier_modele = explode('.',$nom_fichier_modele_ooo);
$nom_fic = remplace_accents($nom_fichier_modele[0]."_".$classe."_"."_généré_le_".$now.".".$nom_fichier_modele[1],'all');
// Je n'arrive pas à générer un fichier à ce nom.
// Problème de syntaxe tinyButStrong?
// Création d'une classe tinyDoc
$OOo = new tinyDoc();
// Choix du module de dézippage
$dezippeur=getSettingValue("fb_dezip_ooo");
if ($dezippeur==1){
$OOo->setZipMethod('shell');
$OOo->setZipBinary('zip');
$OOo->setUnzipBinary('unzip');
}
else{
$OOo->setZipMethod('ziparchive');
}
$tempdir=get_user_temp_directory();
$nom_dossier_temporaire = "../temp/".$tempdir;
$nom_fichier_xml_a_traiter ='content.xml';
$OOo->SetProcessDir($nom_dossier_temporaire);
$OOo->createFrom($nom_fichier);
//$OOo->createFrom($nom_fichier);
$OOo->loadXml($nom_fichier_xml_a_traiter);
// Traitement des tableaux
$OOo->mergeXml(
array(
'name' => 'var',
'type' => 'block',
'data_type' => 'array',
'charset' => 'UTF-8'
),$tab_OOo);
$OOo->SaveXml(); //traitement du fichier extrait
$OOo->sendResponse(); //envoi du fichier traité
$OOo->remove(); //suppression des fichiers de travail
// Fin de traitement des tableaux
$OOo->close();
die();
}
elseif($imprimer=="convocation") {
$lieu="Salle des conseils";
// Lieu à mettre dans d_dates_evenements_classes
$tab_OOo=array();
$cpt=0;
$tab_OOo[$cpt]['acad']=$acad;
$tab_OOo[$cpt]['etab_nom']=$etab_nom;
$tab_OOo[$cpt]['etab_adr1']=$etab_adr1;
$tab_OOo[$cpt]['etab_adr2']=$etab_adr2;
$tab_OOo[$cpt]['etab_cp']=$etab_cp;
$tab_OOo[$cpt]['etab_ville']=$etab_ville;
$tab_OOo[$cpt]['classe']=$classe;
$tab_OOo[$cpt]['lieu']=$lieu;
$date_limite=strftime("%Y-%m-%d")." 00:00:00";
// Pour debug/devel
//$date_limite="2014-06-01 00:00:00";
// Chercher s'il y a des conseils de classe à venir
$sql="SELECT * FROM d_dates_evenements dde,
d_dates_evenements_classes ddec
WHERE dde.id_ev=ddec.id_ev AND
ddec.id_classe='".$id_classe."' AND
date_evenement>='".$date_limite."'
ORDER BY ddec.date_evenement;";
//echo "$sql
";
$res=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res)>0) {
$lig=mysqli_fetch_object($res);
$tmp_date_conseil=formate_date($lig->date_evenement,"y2","complet");
}
else {
$tmp_date_conseil="DATE INCONNUE";
}
$tab_OOo[$cpt]['date_conseil']=$tmp_date_conseil;
$tmp_tab=get_info_user($_SESSION['login']);
if(count($tmp_tab)==0) {
$tmp_tab['nom']="NOM_INCONNU";
$tmp_tab['prenom']="PRENOM_INCONNU";
$tmp_tab['adresse']['adr1']="ADR1";
$tmp_tab['adresse']['adr2']="";
$tmp_tab['adresse']['adr3']="";
$tmp_tab['adresse']['cp']="";
$tmp_tab['adresse']['commune']="VILLE";
}
elseif($tmp_tab['statut']=='eleve') {
// Récupérer l'adresse du 1er parent
$tmp_tab['adresse']['adr1']="ADR1_PARENT";
$tmp_tab['adresse']['adr2']="";
$tmp_tab['adr3']="";
$tmp_tab['adresse']['cp']="";
$tmp_tab['adresse']['commune']="VILLE_PARENT";
$sql="SELECT ra.* FROM resp_adr ra, resp_pers rp, responsables2 r WHERE ra.adr_id=rp.adr_id AND rp.pers_id=r.pers_id AND r.ele_id='".$tmp_tab['ele_id']."' AND r.resp_legal!='0' ORDER BY r.resp_legal;";
//echo "$sql
";
$res=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res)>0) {
$lig=mysqli_fetch_object($res);
$tmp_tab['adresse']['adr1']=$lig->adr1;
$tmp_tab['adresse']['adr2']=$lig->adr2;
$tmp_tab['adresse']['adr3']=$lig->adr3;
$tmp_tab['adresse']['cp']=$lig->cp;
$tmp_tab['adresse']['commune']=$lig->commune;
}
}
$tab_OOo[$cpt]['dest_civilite']=$tmp_tab['civilite'];
$tab_OOo[$cpt]['dest_nom']=$tmp_tab['nom'];
$tab_OOo[$cpt]['dest_prenom']=$tmp_tab['prenom'];
$tab_OOo[$cpt]['dest_adr1']=$tmp_tab['adresse']['adr1'];
$tab_OOo[$cpt]['dest_adr2']=$tmp_tab['adresse']['adr2'];
$tab_OOo[$cpt]['dest_adr3']=$tmp_tab['adresse']['adr3'];
$tab_OOo[$cpt]['dest_cp']=$tmp_tab['adresse']['cp'];
$tab_OOo[$cpt]['dest_ville']=$tmp_tab['adresse']['commune'];
// Load the template
$nom_fichier_modele_ooo ='convocation_conseil_classe.odt';
$prefixe_generation_hors_dossier_mod_ooo="../mod_ooo/";
//Procédure du traitement à effectuer
//les chemins contenant les données
include_once ("../mod_ooo/lib/chemin.inc.php");
$nom_fichier = "../mod_ooo/".$nom_dossier_modele_a_utiliser.$nom_fichier_modele_ooo;
//Génération du nom du fichier
$now = gmdate('d_M_Y_H:i:s');
$nom_fichier_modele = explode('.',$nom_fichier_modele_ooo);
$nom_fic = remplace_accents($nom_fichier_modele[0]."_".$classe."_"."_généré_le_".$now.".".$nom_fichier_modele[1],'all');
// Je n'arrive pas à générer un fichier à ce nom.
// Problème de syntaxe tinyButStrong?
// Création d'une classe tinyDoc
$OOo = new tinyDoc();
// Choix du module de dézippage
$dezippeur=getSettingValue("fb_dezip_ooo");
if ($dezippeur==1){
$OOo->setZipMethod('shell');
$OOo->setZipBinary('zip');
$OOo->setUnzipBinary('unzip');
}
else{
$OOo->setZipMethod('ziparchive');
}
$tempdir=get_user_temp_directory();
$nom_dossier_temporaire = "../temp/".$tempdir;
$nom_fichier_xml_a_traiter ='content.xml';
$OOo->SetProcessDir($nom_dossier_temporaire);
$OOo->createFrom($nom_fichier);
//$OOo->createFrom($nom_fichier);
$OOo->loadXml($nom_fichier_xml_a_traiter);
// Traitement des tableaux
$OOo->mergeXml(
array(
'name' => 'var',
'type' => 'block',
'data_type' => 'array',
'charset' => 'UTF-8'
),$tab_OOo);
$OOo->SaveXml(); //traitement du fichier extrait
$OOo->sendResponse(); //envoi du fichier traité
$OOo->remove(); //suppression des fichiers de travail
// Fin de traitement des tableaux
$OOo->close();
/*
$TBS->LoadTemplate($nom_fichier, OPENTBS_ALREADY_UTF8);
$TBS->Show(OPENTBS_DOWNLOAD+TBS_EXIT, $nom_fic);
*/
die();
}
else {
header("Location: ../accueil.php?msg=Document non choisi.");
die();
}
}
if((isset($id_classe))&&(isset($_POST['is_posted']))&&($_POST['is_posted']==2)) {
check_token();
if(($_SESSION['statut']=="professeur")&&(!getSettingAOui('imprimerConvocationConseilClassePP'))) {
header("Location: imprimer_documents.php?msg=Impression non autorisée.");
die();
}
elseif(($_SESSION['statut']=="cpe")&&(!getSettingAOui('imprimerConvocationConseilClasseCpe'))) {
header("Location: imprimer_documents.php?msg=Impression non autorisée.");
die();
}
$msg="";
$date_conseil=isset($_POST['date_conseil']) ? $_POST['date_conseil'] : array();
/*
include_once('../mod_ooo/lib/lib_mod_ooo.php');
include_once('../tbs/tbs_class.php');
include_once('../tbs/plugins/tbs_plugin_opentbs.php');
*/
include_once('../mod_ooo/lib/tinyButStrong.class.php');
include_once('../mod_ooo/lib/tinyDoc.class.php');
$acad = $gepiSettings['gepiSchoolAcademie'];
$etab_anne_scol = $gepiSettings['gepiSchoolName'];
$etab_nom = $gepiSettings['gepiSchoolName'];
$etab_adr1 = $gepiSettings['gepiSchoolAdress1'];
$etab_adr2 = $gepiSettings['gepiSchoolAdress2'];
$etab_cp = $gepiSettings['gepiSchoolZipCode'];
$etab_ville = $gepiSettings['gepiSchoolCity'];
$etab_tel = $gepiSettings['gepiSchoolTel'];
$etab_fax = $gepiSettings['gepiSchoolFax'];
$etab_email = $gepiSettings['gepiSchoolEmail'];
// Envoi des mails
$nom_fichier_modele_ooo="mail_convocation_conseil_classe.txt";
if ($_SESSION['rne']!='') {
$rne=$_SESSION['rne']."/";
} else {
$rne='';
}
if(!isset($prefixe_generation_hors_dossier_mod_ooo)) {
$prefixe_generation_hors_dossier_mod_ooo="";
}
$nom_dossier_modeles_ooo_par_defaut='modeles_gepi/';
$nom_dossier_modeles_ooo_mes_modeles='mes_modeles/';
if (file_exists($prefixe_generation_hors_dossier_mod_ooo.$nom_dossier_modeles_ooo_mes_modeles.$rne.$nom_fichier_modele_ooo)) {
$nom_dossier_modele_a_utiliser = $prefixe_generation_hors_dossier_mod_ooo.$nom_dossier_modeles_ooo_mes_modeles.$rne;
} else {
$nom_dossier_modele_a_utiliser = $prefixe_generation_hors_dossier_mod_ooo.$nom_dossier_modeles_ooo_par_defaut;
}
$nom_fichier = "../mod_ooo/".$nom_dossier_modele_a_utiliser.$nom_fichier_modele_ooo;
$contenu_modele_mail=file_get_contents($nom_fichier);
/*
__DESIGNATION_DESTINATAIRE__
__CLASSE__
__DATE_CONSEIL__
__LIEU_CONSEIL__
__NOM_ETAB__
__ADR_ETAB__
*/
$lieu="Salle des conseils";
// Lieu à mettre dans d_dates_evenements_classes
$mail_erreur="";
for($loop=0;$loop
Retour"; if(acces("/mod_engagements/index_admin.php", $_SESSION['statut'])) { echo " | Définir les types d'engagements"; } if(acces("/mod_engagements/saisie_engagements.php", $_SESSION['statut'])) { echo " | Saisir les engagements"; } elseif(($_SESSION['statut']=='professeur')&&(is_pp($_SESSION['login']))) { // Tester s'il y a des droits de saisie pour les PP $sql="SELECT 1=1 FROM engagements WHERE SaisiePP='yes';"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)>0) { echo " | Saisir les engagements"; } } $acces_imprimerConvocationConseilClasse=true; if(($_SESSION['statut']=="professeur")&&(!getSettingAOui('imprimerConvocationConseilClassePP'))) { $acces_imprimerConvocationConseilClasse=false; } elseif(($_SESSION['statut']=="cpe")&&(!getSettingAOui('imprimerConvocationConseilClasseCpe'))) { $acces_imprimerConvocationConseilClasse=false; } if($_SESSION['statut']=='professeur') { $tab_pp=get_tab_ele_clas_pp($_SESSION['login']); if(count($tab_pp['id_classe'])==0) { echo "
Vous n'êtes ".getSettingValue('gepi_prof_suivi')." d'aucune classe.
"; require_once("../lib/footer.inc.php"); die(); } elseif(count($tab_pp['id_classe'])==1) { $id_classe=array(); $id_classe[0]=$tab_pp['id_classe'][0]; } else { if(!isset($id_classe)) { $suite="n"; } else { $suite="y"; for($loop=0;$loopVous n'êtes pas ".$gepi_prof_suivi." de la classe de ".get_nom_classe($id_classe[$loop]); $suite="n"; break; } } } if($suite=="n") { echo "
\n"; echo "Choix des classes :
\n"; echo "\n"; echo "Choix des classes :
\n"; // Liste des classes avec élève: $sql="SELECT DISTINCT c.* FROM j_eleves_classes jec, classes c WHERE (c.id=jec.id_classe) ORDER BY c.classe;"; $call_classes=mysqli_query($GLOBALS["mysqli"], $sql); $nb_classes=mysqli_num_rows($call_classes); if($nb_classes==0){ echo "Aucune classe avec élève affecté n'a été trouvée.
\n"; require("../lib/footer.inc.php"); die(); } echo "\n"; echo "NOTE : Pour le moment, seuls les documents concernant les conseils de classe sont proposés ici.
\n"; require("../lib/footer.inc.php"); die(); } //============================================================================== echo " | Choisir d'autres classes"; $acces_saisie_engagements="n"; if($_SESSION['statut']=='administrateur') { $acces_saisie_engagements="y"; } elseif($_SESSION['statut']=='cpe') { $tab_engagements_saisie_cpe=get_tab_engagements("", "cpe"); if(count($tab_engagements_saisie_cpe['indice'])>0) { $acces_saisie_engagements="y"; } } elseif($_SESSION['statut']=='scolarite') { $tab_engagements_saisie_scol=get_tab_engagements("", "scolarite"); if(count($tab_engagements_saisie_scol['indice'])>0) { $acces_saisie_engagements="y"; } } if($acces_saisie_engagements=="y") { echo " | Saisie des engagements"; } if(acces("/mod_ooo/gerer_modeles_ooo.php", $_SESSION['statut'])) { echo " | Modifier les modèles de documents"; } echo "\n"; // On ne va pas imprimer des documents pour des conseil_de_classe passés //$date_limite=strftime("%Y-%m-%d %H:%M:%S"); $date_limite=strftime("%Y-%m-%d")." 00:00:00"; // Pour debug/devel //$date_limite="2014-06-01 00:00:00"; // Chercher s'il y a des conseils de classe à venir for($i=0;$i"; print_r($dates_conseils); echo ""; */ $msg_scorie=""; echo "
Choisissez :
\n"; echo " "; } else { echo " "; } require_once("../lib/footer.inc.php"); ?>